#pragma once

#include "Game\BishopMesh.h"
#include "Game\BoardMesh.h"
#include "Game\FieldMesh.h"
#include "Game\KingMesh.h"
#include "Game\KnightMesh.h"
#include "Game\PawnMesh.h"
#include "Game\QueenMesh.h"
#include "Game\RookMesh.h"


#include "DirectX/MeshLoader.h"
#include "DirectX/TextureManager.h"
#include "DirectX/Renderable.h"
#include "DirectX/Mesh.h"
#include "Chess/Field.h"
#include "Common.h"

class AssetManager
{
public:
  AssetManager(void);
  virtual ~AssetManager(void);

  static DirectX::IRenderable* Load(std::string filename); 
  static DirectX::IRenderable* Load(Chess::FigureTypeEnum figure, Chess::ColorEnum color = Chess::ColorEnum::WHITE);  

private:
  static MeshDesc* LoadMeshFromFile(std::string filename);
};
